package com.shujia.scala

import scala.collection.mutable

object Demo18ScalaMap {
  /**
   * Map : kv格式的数据
   * 无序、key值不能重复、不可变
   * 可以根据key获取value 所以非常适合查询的场景
   *
   */
  def main(args: Array[String]): Unit = {
    val map = Map(("k1", "v1"), ("k2", "v2"), "k3" -> "v3")

    map.foreach(t2 => {
      val key: String = t2._1

      val value: String = t2._2
      println(key + "," + value)
    })

    // 根据key判断存不存在
    println(map.contains("k1"))
    println(map.contains("k4"))

    // 通过key获取value
    println(map.get("k1")) // Some(v1)
    println(map.get("k1").get) // v1
    println(map.get("k4")) // None
    println(map.getOrElse("k5", "默认值")) // key如果不存在 就返回指定的默认值


    /**
     * 可变Map
     */

    val hMap: mutable.HashMap[String, String] = mutable.HashMap("k1" -> "v1", "k2" -> "v2", "k3" -> "v3")
    hMap.+=("k4" -> "v4")
    println(hMap)

  }

}
